\chapter{引 言}
\label{cha:intro}
% UNIX~操作系统（UNIX），是美国AT\&T公司1971年~在PDP-11上运行的操作系统。具有多用户、
% 多任务的特点，支持多种处理器架构，最早由肯·湯普遜（Kenneth Lane Thompson）、
% 丹尼斯·里奇（Dennis MacAlistair Ritchie），见图\ref{fig:ken}。和~Douglas
% McIlroy~于1969年在~AT\&T~的贝尔实验室开发\footnote{摘自中文维基百科}。\par
% \begin{figure}[htbp]
%     \centering
% 	\includegraphics{Ken_n_dennis}
%     \caption{肯·汤普逊（左）和丹尼斯·里奇（右）}
%     \label{fig:ken}
% \end{figure}
% Linux~操作系统（Linux），是一类计算机操作系统的统称。Linux~操作系统的内核的名字也是~“Linux”。
% Linux~操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲，Linux~这个词本身只表
% 示~Linux~内核，但在实际上人们已经习惯了用~Linux~来形容整个基于~Linux~内核，并且使用~GNU~
% 工程各种工具和数据库的操作系统（也被称为~GNU/Linux~）。基于这些组
% 件的~Linux~软件被称为~Linux~发行版。

% Linux内核最初只是由芬兰人林纳斯·托瓦兹（Linus
% Torvalds），见图\ref{fig:linus}，在赫尔辛基大学上学时出于
% 个人爱好而编写的，当时他并不满意~Minix~这个教学用的操作系统，部分因为只能在有限硬件上运行。
% 最初的设想中，Linux~是一种类似~Minix~这样的一种操作系统。Linux~的第一个版本在1991年9月
% 被大学~FTP server~管理员~Ari Lemmke~发布在~Internet~上，最初~Torvalds~称这个内核的名称为
% ~"Freax"，意思是自由（"free"）和奇异（"freak"）的结合字，并且
% 附上了~"X"~这个常用的字母，以配合所谓的~Unix-like~的系统。但是~FTP server~管理员
% 嫌原来的命名~“Freax”~的名称不好听，把内核的称呼改成~“Linux”~，当时仅有10000行代码，仍必须
% 运行于~Minix~操作系统之上，并且必须使用硬盘开机；随后在10月份第二个版本（0.02版）
% 就发布了，同时这位芬兰赫尔辛基的大学生在~comp.os.minix~上发布一则消息\par
% \begin{center}
% \fbox{\parbox[t]{0.8\textwidth}{
% Hello everybody out there using minix-\\
% I'm doing a (free) operation system (just a hobby,\\
% won't be big and professional like gnu) for 386(486) AT clones.}}
% \end{center}
% \begin{figure}[htbp]
%     \centering
%     \includegraphics{Linus_Torvalds}
%     \caption{Linus Torvalds}
%     \label{fig:linus}
% \end{figure}

\section{问题背景}
\label{sec:history}
在摄影测量和计算机立体视觉中，Boundle Adjustment是同时细化描述场景几何形状的三维坐标、相对运动参数和用于获取图像的摄像机的光学特性的问题。给出了一组图像，从不同的角度描绘了许多3D点。它的名字是指从每个3D特征发出并汇聚到每个相机的光学中心的几何束光线，这些光线根据涉及到相应图像项目的最优性准则进行最优调整

Boundle Adjustment几乎总是作为每一个基于特征的三维重建算法的最后一步。这相当于一个关于3D结构和观看参数的优化问题(即相机位姿和可能的内禀标定和径向畸变)，以获得在一定假设下与观测到的[1]图像特征相关的噪声是最优的重建:如果图像误差为零平均高斯，则Boundle Adjustment为最大似然估计。

三维重建的基础之一是运动恢复结构(Structure from Motion ,SFM),SFM通常包括以下几个步骤：

\begin{itemize}
  \item 图片预处理，消除畸变
  \item 对图片进行特征点提取
  \item 将特征点进行匹配，通过求解本征矩阵测算出视图之间的位姿
  \item 后端优化消除噪声
  \item 恢复稀疏点云
\end{itemize}

BA主要应用于后端优化消除噪声这一部分。

\section{问题解决方法现状}
在Boundle Adjustment出现之前，对于该类问题最常用的解决办法是卡尔曼滤波，运动与观测方程很容易转换为卡尔曼滤波问题，每次获得新的观测，都会更新整体状态。同时我们的方程具有很好的马尔可夫性，根据马尔科夫链以及其一些衍生方法也可以解决该问题。然而这两种方法取得的效果并不能让人满意。
\label{sec:solutionbefore}

\section{本文方法特点}
\label{sec:charactistic}
Boundle Adjustment与前面提到的两种方法不同的是其采用了批量处理的方式，因此可以更大范围的优化调整之前的结果。同时也衍生出了局部Boundle Adjustment与全局Boundle Adjustment。二者结合使用可以得到很好的效果。
在08年左右滤波方法是主流方法，因为研究者发现BA虽然具有较好的效果，但是计算量很大，没有办法进行实时的运行，后来研究者发现BA的优化矩阵满足稀疏的属性，因此存在加速的可能。
